### 序列: 在python中有很多有序的结构(有先后顺序的结构): 字符串  range对象 列表 元组
### 序列有很多公共的方法(len min max index count) 和 操作符(in , not in , + , * ,[切片的起始位置:切片的结束位置:步长])

str_01 = "hello python l"
str_02 = "!!!!!!!"
str_03 = "1234567631786312786312783"

list_01 = ["a", "b", "c"]
list_02 = ["d", "e", "f"]


# # 成员运算符
# print("xxx" in str_01)
# print("xxx" not in str_01)
print("a" in list_01)
# # 字符串拼接
# print(str_01 + str_02)
print(list_01 + list_02)
# # 字符串的复用
# print(str_01 * 4)
print(list_01 * 2)
# # 字符串索引 ,在编程中 下标(索引)都是从0开的
# print(str_01[1])
# # 字符串切片(带步长的)
# print(str_01[0:5])
# print(str_01[0:5:2])
print(list_01[0:2])
# # len min max(根据ASCII来比较大小的)
# print(len(str_01))
# print(min(str_01))
# print(max(str_01))
# # index count
# print(str_01.index("l"))
# print(str_01.index("l",4))
# print(str_01.count("x"))


# range 类型表示数字序列，通常用于在 for 循环中指定循环的次数。
# range 对象实现了 一般 序列的所有操作，但拼接和重复除外
range_01 = range(10)
count = range_01.count(3)
print(count)

for i in range(4,9):
    print(i,"----")

for i in str_01:
    print(i,"*****")

for i in list_02:
    print(i,"!!!!!")

### 切片 , [切片的起始位置(默认是0):切片的结束位置(默认是字符串的长度):步长]
print("-------------")

# 字符串反转
str_test = "达姆是我见过的最牛逼的程序员"
str_fz = str_test[::-1]
print(str_fz)

# range写3个参数
for i in range(10,1,-1):
    print(i)